package com.itcoon.cloud.framework.transform;/**
 * @author Athric Yu
 * 2024/9/30
 **/

import com.itcoon.cloud.framework.transform.definition.InjectDefinition;
import com.itcoon.cloud.framework.transform.enums.TransformFeature;

import java.lang.reflect.Type;
import java.util.List;

/**
 *
 *
 * @author Athric Yu
 * 2024/9/30
 **/
public interface MethodAssembler<T, R> {

    R assemble(T source, Class<R> targetClass, Type[] actualTypes, String[] ignoreProperties, List<InjectDefinition> injectDefinitions, TransformFeature... features);
}
